﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using DevExpress.XtraEditors;

namespace Gemciler_Uretim.Ekran
{
    public partial class EkranAyarı : DevExpress.XtraEditors.XtraForm
    {
        public EkranAyarı()
        {
            InitializeComponent();
        }
        SqlConnecitonClass sqlbaglanti = new SqlConnecitonClass();
        public  int tablo_no , kullanici_no;
        private void EkranAyarı_Load(object sender, EventArgs e)
        {
            this.Text = "Ekran Kolon Ayarları / Tablo No:" + tablo_no + "";
            dgv_guncelle();
            for (int i = 0; i < gridView1.Columns.Count; i++)
            {
                this.gridView1.Columns[i].OptionsFilter.FilterPopupMode = DevExpress.XtraGrid.Columns.FilterPopupMode.CheckedList;

            }
           
           
        }
        private void dgv_guncelle()
        {
            gridControl1.DataSource = sqlbaglanti.ShowTable("SELECT * FROM DBO.tkfn_KullaniciEkranKolonlari(" + tablo_no + "," + kullanici_no + ") ORDER BY [KOLON NO]", CommandType.Text);
            this.gridView1.OptionsBehavior.AllowIncrementalSearch = false;
            this.gridView1.OptionsView.ShowAutoFilterRow = true;
            this.gridView1.OptionsView.ShowGroupPanel = false;
            this.gridView1.OptionsBehavior.Editable = true;
            this.gridView1.OptionsBehavior.ReadOnly = false;
            this.gridView1.Columns["FORMAT"].Visible = false;
            this.gridView1.Columns["TOPLAM"].Visible = false;

            this.gridView1.Columns["TABLONO"].OptionsColumn.AllowEdit = false;
            this.gridView1.Columns["KULLANICI"].OptionsColumn.AllowEdit = false;
            this.gridView1.Columns["KOLON NO"].OptionsColumn.AllowEdit = false;
            this.gridView1.Columns["KOLON ADI"].OptionsColumn.AllowEdit = false;
           

            this.gridView1.Appearance.HeaderPanel.TextOptions.WordWrap = DevExpress.Utils.WordWrap.Wrap;
            this.gridView1.ColumnPanelRowHeight = 50;
            gridView1.BestFitColumns();
        }
        private void kullanici_ayarlarini_sakla()
        {
            gridView1.MoveFirst();
            sqlbaglanti.CommScalar("DELETE FROM [TK_EKRAN_USER]  WHERE  [user_tablo_no]=" + tablo_no + " AND [user_tablo_kullanici]=" + kullanici_no + " ", CommandType.Text);

            for (int i = 0; i <= gridView1.RowCount-1; i++)
            {



               
                string sd_pasif = Convert.ToString(gridView1.GetRowCellValue(i, "PASİF").ToString());
                Int32 kolon_sira_no=Convert.ToInt32(gridView1.GetRowCellValue(i, "KOLON SIRASI").ToString());

                if (sd_pasif == "True") 
                {

                    string  tablo_kolon_adi = Convert.ToString(gridView1.GetRowCellValue(i, "KOLON ADI").ToString());

                    sqlbaglanti.CommScalar("INSERT INTO[TK_EKRAN_USER]  ([user_tablo_no] ,[user_tablo_kullanici] ,user_tablo_kolon_adi ,[user_tablo_pasif],user_tablo_kolon_sirasi,user_tablo_genislik)"
                        + " VALUES    (" + tablo_no + "," + kullanici_no + ",'" + tablo_kolon_adi + "',1," + kolon_sira_no + ",0)", CommandType.Text);
                }
                if (sd_pasif == "False")
                {

                    string tablo_kolon_adi = Convert.ToString(gridView1.GetRowCellValue(i, "KOLON ADI").ToString());
                    Int32 tablo_format = Convert.ToInt32(gridView1.GetRowCellValue(i, "FORMAT").ToString());
                    string toplam_al = Convert.ToString(gridView1.GetRowCellValue(i, "TOPLAM").ToString());
                    Int16 tablo_toplam_al = 0;
                    Int32 tablo_kolon_genislik = Convert.ToInt32(gridView1.GetRowCellValue(i, "KOLON GENİŞLİK").ToString());
                    if (toplam_al == "True") { tablo_toplam_al = 1; }

                    sqlbaglanti.CommScalar("INSERT INTO[TK_EKRAN_USER]  ([user_tablo_no] ,[user_tablo_kullanici] ,user_tablo_kolon_adi   ,[user_tablo_pasif],user_tablo_kolon_sirasi,user_tablo_format,user_tablo_format_alt_topla,user_tablo_genislik)"
                         + " VALUES    (" + tablo_no + "," + kullanici_no + ",'" + tablo_kolon_adi + "',0," + kolon_sira_no + "," + tablo_format + "," + tablo_toplam_al + "," + tablo_kolon_genislik+ ")", CommandType.Text);
                }
               

            }
            MessageBox.Show("AYARLAR SAKLANDI");
        }
        private void çıkışToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Close();
        }

        private void kullanıcıAyarlarınıSaklaToolStripMenuItem_Click(object sender, EventArgs e)
        {
            kullanici_ayarlarini_sakla();
            Close();
        }


        private void ekranKolonlarınıYenidenOluşturToolStripMenuItem_Click(object sender, EventArgs e)
        {
            for (int i = 0; i < gridView1.Columns.Count; i++)
            {
             string kolon_name=  this.gridView1.Columns[i].Name.ToString();
             kolon_name.Replace("col","");
                sqlbaglanti.CommScalar("INSERT INTO [TK_EKRAN_TABLO]  ([tablo_no],[tablo_kullanici],[tablo_kolon_no],[tablo_kolon_adi] ,[tablo_pasif])"
                   +" VALUES(999,900,"+i+",'"+kolon_name+"',0)",CommandType.Text);
            }
        }
    }
}